#ifndef ROBOTCMDNODE_ROBOTARM_H_
#define ROBOTCMDNODE_ROBOTARM_H_

/*****************************************************************************
** Includes
*****************************************************************************/
//ROS2
#include "rclcpp/rclcpp.hpp"
#include "dl_msg/msg/dl_msg.hpp"
//CPP
#include <chrono>
#include <memory>
#include <functional>
#include <string>

class DlClient;
/*****************************************************************************
  ** Class
  *****************************************************************************/

class RobotCmdNode : public rclcpp::Node
{
public:
    RobotCmdNode(DlClient *dl);
    virtual ~RobotCmdNode();

    void pubDlMsg(double x, double y, double z, double rx, double ry, double rz, unsigned short state);

private:

    rclcpp::Publisher<dl_msg::msg::DlMsg>::SharedPtr m_pubDlMsg;
    void getParameters();

private:
    DlClient *m_dl;
    std::string m_strIp;
    unsigned short m_usPort;
};

#endif //ROBOTCMDNODE_ROBOTARM_H_
